home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / doors_2 / shmpg324.zip / SHAMPAGE.DOC < prev    next >
Text File  |  1992-09-02  |  16KB  |  293 lines

  1.  
  2.                                                                  
  3.  This program compliments of:                      ╓┴╖           ╓┴╖
  4.                                                  / ║ ║           ║ ║ \
  5.    ╤╕           ╤╕       ╕         ╤╕╤╕╒╕       ┌─┬║┬║┬─┬─┬─┬─┬─┬║┬║┬─┐
  6.    ││           ││      │         │││││       ▀▀▀▀║▀║▀▀▀▀▀▀▀▀▀▀▀║▀║▀▀▀▀
  7.    ││ ╤╕ ╒╕ ╕ ╒ ╞╡ ╤╕ ╕ ╒╡ ╒╤ ╤╕   ╞╡╞╡╘╕          ╨ ╨           ╨ ╨
  8.    ││ │  ╒╡ │││ ││ │  │ ││ ││ ╞╛   ││││ │             FIDO 1:369/2
  9.    ╧╛ ╧  ╘╧ ╘╧╛ ╧╛ ╧  ╘ ╘╧ ╘╡ ╘╛   ╧╛╧╛╘╛          EchoNet 50:5305/2
  10.                             │                       OurNet 65:613/2
  11.      Fort Lauderdale, FL   ╘╛                        WDNet 3090.00
  12.    (305) 523-1717 *HST/DS*
  13.  
  14.  
  15.                                 SHAMpage v3.24
  16.                             (C) 1992 by Rich Waugh
  17.  
  18. Do you ALWAYS answer the page bell, even at 3am? If so, you must be a new
  19. SysOp - SHAMpage is not for you. If, on the other hand, you do occasionally
  20. disable the page function, you might enjoy this fun little door. It allows
  21. the caller to have a nice (or not-so-nice... it's totally up to you) chat
  22. with the SysOp - even when the SysOp's not around!
  23.  
  24. SHAMpage is similar to other "A.I." programs with which you may already be
  25. familiar, such as ELIZA or CHERI. There is a bit more to SHAMpage than those
  26. programs though, for example: a routine to randomly vary the speed at which
  27. each letter is "typed", a random "typo & correction" routine and built-in
  28. communication I/O routines. All the typing delays are calculated, so the
  29. typing rate initially will vary on different machines, depending on the speed
  30. of the CPU, but they were written in a manner that allows you to configure
  31. the program to type at realistic speeds on virtually any machine (see line 8
  32. of the sample configuration file below).
  33.  
  34. While "chatting", SHAMpage checks the caller's entry, each time he hits the
  35. [ENTER] key, for up to 100 "key" words (and up to five synonyms per key word)
  36. which you have previously defined. If the caller's entry contains a string
  37. matching one of those words, an appropriate response (or even the contents of
  38. an entire text file) is returned. Otherwise a random response - again, your
  39. choice is sent. All responses go through a typing routine which varies the
  40. speed at which each letter is typed and even makes an occasional "typo". The
  41. key words and related replies are contained in plain-vanilla ASCii data files
  42. which you are free to modify to suit your needs. The enclosed samples are
  43. well commented and should be self-explanatory. Do not be offended by the key
  44. words or replies, some of which are rather rude - please notice that the
  45. really nasty replies are sent only after a positive match with a really nasty
  46. key word the caller has entered of his own volition.
  47.  
  48. The following variables are available in your key word replies:
  49.  
  50. *USER*             - this will be replaced by the caller's first name.
  51.  
  52. *TIME*             - replaced by the current time (in 12-hour format).
  53.  
  54. *KEYWORD*          - replaced by the word SHAMpage matched. This variable
  55.                      comes in several flavors. If it is all upper case, like
  56.                      the example on the left, the variable itself will be
  57.                      typed in all CAPS. *keyword* will be replaced by the
  58.                      variable in all lower case letters, and *Keyword* Will
  59.                      Have The First Letter Only Capitalized. Please see
  60.                      WHAT'S.NEW for further details.
  61.  
  62. *FILE* [FileName]  - this tells SHAMpage to type the contents of the
  63.                      file [FileName].
  64.  
  65. *LF*               - wherever this occurs the line will be split, a line-feed
  66.                      sent, and the rest of the response typed on the
  67.                      following line.
  68.  
  69. *ALIAS*            - identifies a synonym for a key word.
  70.  
  71. All variables are enclosed in asterisks (*) and are always UPPER CASE (except
  72. *KEYWORD*, as noted above).
  73.  
  74. SHAMpage was originally conceived as a fun, humorous door and the included
  75. data file (the one I use) reflects that - it works great with 13 year-old's
  76. at two in the morning! However, since I released SHAMpage to the public, many
  77. SysOps have told me, to my surprise, that it is the perfect program to answer
  78. callers' questions in a quite serious and/or informative manner whenever the
  79. SysOp really isn't available (a use which, I must admit, never even crossed
  80. my mind when I began writing the code). If that is also your intention,
  81. simply edit SHAMPAGE.DAT. Hobby-oriented SysOps with a sense of humor as sick
  82. as mine can use the enclosed SHAMPAGE.DAT with few changes; if you intend to
  83. run SHAMpage on a business-type BBS, it will need a LOT of editing! How you
  84. use SHAMpage is up to you.
  85.  
  86.  ┌──────────────────────────────────────────────────────────────────────────┐
  87.  │  CAUTION! When you modify the data file, please remember that each KEY   │
  88.  │  WORD, including NOMATCH, is limited to a maximum of ten (10) replies.   │
  89.  │  Also, be absolutely certain you match the format of the example file.   │
  90.  │  Any variation will result in unpredictable and undesirable results. I   │
  91.  │  strongly recommend you use the included MAINTAIN utility every time     │
  92.  │  you edit your data file. MAINTAIN will check your data file for         │
  93.  │  grievous errors and, while it will catch some obvious errors in the     │
  94.  │  file, it is not intended as a replacement for your own care in editing! │
  95.  └──────────────────────────────────────────────────────────────────────────┘
  96.  
  97. SHAMpage runs on any BBS capable of generating a standard DORINFOx.DEF or
  98. DOOR.SYS drop file. It is, in fact, currently running on WildCat!, PCBoard,
  99. QuickBBS, Remote Access and Virtual BBS boards that I am aware of. Features
  100. include support for drop to DOS, various timer functions (caller's time left,
  101. input-timer whenever remote input is expected, SysOp hot-keys to increase or
  102. decrease caller's time left), carrier detection, CTS checking and more. You
  103. can check the caller's stats while the door is in operation. SHAMpage writes
  104. a log just in case you really WEREN'T around when you had that little chat
  105. with a caller <grin> as well as a separate file which logs errors, should
  106. they occur.
  107.  
  108. Perhaps most importantly, SHAMpage does include a page bell to notify you
  109. when you're being paged and you actually CAN pick up the page and chat with
  110. the caller while he is in the door. One of the benefits you will discover is
  111. that SHAMpage allows you to "screen" pages much the same as people who own
  112. telephone answering machines often decide whether or not to pick up the phone
  113. only after hearing not only who is on the other end but ALSO what he wants.
  114. Information about the caller appears at the bottom of the local screen: name,
  115. location, connect rate and (if using DOOR.SYS) age. If you choose not to chat
  116. with the caller, let SHAMpage do it! If you do want to chat, you can take
  117. live control at any time, transparently to the caller, by hitting [F7]. When
  118. you're finished, press [F8] and SHAMpage will resume the chat or press [F10]
  119. to return the caller to the BBS. The local screen (only) indicates whenever
  120. the chat is live. The caller is not charged for time while in live chat, so
  121. you will not be rudely interrupted in the middle of a live conversation by
  122. SHAMpage logging him off!
  123.  
  124. When the caller exits the door by typing G, Q, X, EXIT, BYE, QUIT or two
  125. consecutive empty lines (SHAMpage also terminates whenever it runs out of
  126. responses to any particular key word, including NOMATCH, as well as when the
  127. caller's time limit expires), he receives an, up to four line, exit message
  128. which explains the SysOp was unavailable and he was actually chatting with
  129. the computer (or whatever you choose to say). If he exits by dropping carrier
  130. - some people have NO sense of humor - he might not get that message <grin>,
  131. but the door notes the dropped carrier in the log and exits gracefully
  132. anyway.
  133.  
  134.                     ──────────────────────────────────────
  135.  
  136. Here's what's required to implement SHAMpage on your board:
  137.  
  138. Make a separate directory where you will run SHAMpage. Unzip all the files in
  139. the archive into this directory. Next, you must modify SHAMPAGE.CFG to
  140. reflect the correct information for your board (see below). You will also
  141. want to edit SHAMpage.DAT (and MIDNITE.DAT, if you plan to use it) to replace
  142. occurrences of my name with yours and personalize some of the opening lines,
  143. key words and/or responses, etc.
  144.  
  145.    ┌──────────────────────────────────────────────────────────────────┐
  146.    │ IMPORTANT: Read WHAT'S.NEW to see various other configuration    │
  147.    │ options not documented here. This documentation DOES NOT include │
  148.    │ all the current features of SHAMpage.                            │
  149.    └──────────────────────────────────────────────────────────────────┘
  150.  
  151. EXAMPLE SHAMPAGE.CFG
  152.  
  153. DrawBridge BBS                 <── The name of your BBS
  154. RICH                           <── SysOp's first name
  155. WAUGH                          <── SysOp's last name
  156. C:\Wc30\Wcwork\Node1\DOOR.SYS  <── Path to & name of DOOR.SYS (or DORINFOx.DEF)
  157. SPLIT                          <── split-screen chat mode (or FULL)
  158. SHAMPAGE.DAT                   <── Name of the Key Word Data File
  159. SHAMPAGE.LOG                   <── Name of the Log File to write
  160. 1  <────────────────────────────── Delay factor - increase this number
  161. 0  <──────────────────────────┐    to slow down the typing speed, decrease
  162. 23:00  <───── Time to turn    │    it to speed up the typing. For example,
  163. 08:00  <──┐   Page Bell OFF   │    making this factor .5 will increase the
  164.           │                   │    typing speed 100%, making it 2 will slow
  165.           └── Time to turn    │    it down 100%. Experiment with different
  166.               Page Bell ON    │    values until you get a realistic typing
  167.                               │    speed for your machine. For your
  168.  NOTE: The last two lines     │    information, SHAMpage was written and
  169.        must be entered in     │    tested on a 386/25DX machine and types
  170.        military-style 24:00   │    just about right with this factor set at
  171.        format.                │    one (1). (Remember, it's SUPPOSED to
  172.                               │    emulate a real human typing, at realistic
  173.                               │    human speeds.)
  174.                               │
  175.                               └─── An integer specifying the type of
  176.                                    handshake you wish to use between the CPU
  177.                                    and modem. Valid numbers are:
  178.                                              0 = NO handshake
  179.                                              1 = XON/XOFF
  180.                                              2 = CTS/RTS
  181.                                              3 = XON/XOFF and CTS/RTS
  182.                                    If you don't know what to put here, make
  183.                                    it 0 or 1. CTS/RTS is for high-speed
  184.                                    modems.
  185.  
  186. Due to the fact the remote cursor position is generated by ANSI code, if the
  187. caller has color screens turned off, SHAMpage will default to full-screen
  188. chat, not split-screen. This is not a bug. It is intended to run this way.
  189.  
  190.                     ──────────────────────────────────────
  191.  
  192. SHAMpage is run with the following syntax: SHAMpage SHAMPAGE.CFG
  193.  
  194. For a quick demonstration, SHAMpage can also be run from the command line by
  195. typing: SHAMpage SHAMpage.CFG LOCAL
  196.  
  197. EXAMPLE MAIN1.BAT (or DOORx.BAT):
  198.  
  199. @Echo Off
  200. Cd \Doors\SHAMpage
  201. SHAMpage SHAMPAGE.CFG TIME=80
  202.                       └──┬──┘
  203.                          └─────> Command line option to control the caller's
  204.                                  time in the door. See WHAT'S.NEW for details.
  205.  
  206. This batch file will work only if you have WildCat! set to SHELL to doors.
  207. This documentation is not intended to be a tutorial on door setup. If you've
  208. never set up a door before, please refer to your BBS documentation (page 221
  209. in the WildCat! manual).
  210.  
  211.   ┌─────────────────────────────────────────────────────────────────────────┐
  212.   │                  OPTIONAL hints for WildCat! SysOps                     │
  213.   ├─────────────────────────────────────────────────────────────────────────┤
  214.   │ To make the caller believe he is really chatting with the SysOp, run    │
  215.   │ MAKEWILD. From the Main Menu Definition page, change the "Page the      │
  216.   │ SysOp" key to some letter other than P and assign it an access level of │
  217.   │ 1001 or higher, so nobody has access to it. Next, assign DOS Hook 1 or  │
  218.   │ DOS Hook 2 to key P. Then set up SHAMpage in MAINx.BAT. If you REALLY   │
  219.   │ want to fool the caller, run MKWCTEXT and change the "Preparing system  │
  220.   │ to run a door" prompt to "" (nothing).                                  │
  221.   └─────────────────────────────────────────────────────────────────────────┘
  222.  
  223.  
  224.                       FILES INCLUDED IN SHAMPAGE v3.24:
  225.  
  226.     READ.ME!      - IMPORTANT!!! Update information!!!
  227.     SHAMPAGE.CFG  - Example configuration file.
  228.     SHAMPAGE.DAT  - ASCii data file containing KEY WORDS and responses.
  229.     MIDNITE.DAT   - Alternative Data file for night-time use.
  230.     SHAMPAGE.DOC  - The file you're reading now.
  231.     SHAMPAGE.EXE  - The door itself.
  232.     SHAMPAGE.LOG  - A typical excerpt from my SHAMPAGE.LOG.
  233.     MAINTAIN.DOC  - Instructions for the SHAMPAGE.DAT maintenance utility.
  234.     MAINTAIN.EXE  - SHAMPAGE.DAT maintenance utility.
  235.     SENDIT.ASC    - Example *FILE*
  236.     WHAT'S.NEW    - Documentation of changes from release to release.
  237.     DESC.SDI      - Short program description.
  238.     FILE_ID.DIZ   - Longer program description.
  239.  
  240.                     ──────────────────────────────────────
  241.  
  242. SHAMpage is distributed as Nobitchware. I'm not charging anything for it, so
  243. you are NOT entitled to bitch about it!!!
  244.  
  245. I, for one, am sick and tired of people who solicit money for the dumb little
  246. doors/utilities we all find so indespensible, so this one's a freebie. It is
  247. fully functional and contains no time bombs. I will attempt to keep the
  248. latest version always available for FREQ (high-speed only please) with the
  249. magic name SHAMPAGE. Significant updates are also hatched out into DDSDOORS,
  250. TDS and the WDNet (WCDOOR) as well as uploaded to the Cathouse.
  251.  
  252. If you find SHAMpage handy, give the DrawBridge a call and thank me. Better
  253. yet, send me your own customized SHAMPAGE.DAT file. I would appreciate
  254. anyone's "serious" data file. If it's good enough, I'll include it in future
  255. releases, with full credit to the author.
  256.  
  257. If you don't find SHAMpage useful, I'll cheerfully refund double your money!
  258.  
  259.                                   Rich Waugh
  260.  
  261.                     ──────────────────────────────────────
  262.  
  263.             FREE WildCat! 3.x doors/utilities from the DrawBridge
  264.  
  265.  
  266. BobCheck - Automatically send each new caller a personal "Welcome" message
  267.            after they pass BobCat verification. Requires BobCat and Postmstr.
  268.  
  269. CheckSec - Restrict access to any door or DOS hook based on the caller's AGE
  270.            or security level.
  271.  
  272. CodeSet  - Reset users in Master Decoder door when they reach the end of the
  273.            data file.
  274.  
  275. MailChek - Check if last caller left any messages. (Don't bother with
  276.            WildMail SCAN if not.)
  277.  
  278. MailDoor - Run more than one mail door from the WildCat! Mail Hook.
  279.  
  280. PieSet   - Reset Piesplat door players automatically when somebody wins the
  281.            game.
  282.  
  283. QwkQuote - OLX compatable reply quote maker.
  284.  
  285. TickFix  - Change the file name extension in *.TIC's from LZH or ARJ to ZIP.
  286.            For those who convert LZH & ARJ files to ZIP before tossing.
  287.  
  288. SHAMpage - Answer ALL SysOp pages - whether you're around or not.
  289.  
  290. ScrbNtfy - Notify players it is their move in one or more Scrabble door games
  291.            via a personal message addressed to them. Requires Postmstr.
  292.  
  293.